/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.techopropio.bfh.controller;

import com.techopropio.bfh.model.Convocatoria;
import com.techopropio.bfh.model.JefeFamilia;
import com.techopropio.bfh.model.Solicitud;
import com.techopropio.bfh.model.Usuario;
import com.techopropio.bfh.service.LoginService;
import com.techopropio.bfh.service.LoginServiceImpl;
import com.techopropio.bfh.service.UsuarioDAO;
import com.techopropio.bfh.service.UsuarioDAOSim;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

/**
 *
 * @author Williams
 */
@WebServlet(name = "loginController", urlPatterns = {"/welcome.htm"})
public class LoginController extends HttpServlet {

    private LoginService loginService;

    @Override
    public void init() throws ServletException {
        UsuarioDAO usuarioDAO = new UsuarioDAOSim();
        loginService = new LoginServiceImpl(usuarioDAO);
    }

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        getServletContext().getRequestDispatcher("/views/login.jsp").forward(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        HttpSession session = req.getSession(true);
        //Usuario usuario = loginService.consultarUsuario(req.getParameter("userName").toString(), req.getParameter("password").toString());
        //Verificar si es null mostrar un mensaje de error
        Usuario usuario =new JefeFamilia();
        
        Convocatoria convocatoria = new Convocatoria();
        
        //Usar el servicio para seleccionar la url
        if(usuario==null){
            String mensaje = "Usuario o password incorrecto";
            req.setAttribute("mensajeLogin",mensaje);
            req.removeAttribute("userName");
            req.removeAttribute("password");
            System.out.println("no hay");
            getServletContext().getRequestDispatcher("/views/login.jsp").forward(req, resp);
        }else{
            session.setAttribute("solicitud", new Solicitud());
            session.setAttribute("convocatoria", convocatoria);
            session.setAttribute("usuario", usuario);
            if(usuario.getRol().equals("evaluador")){
                getServletContext().getRequestDispatcher("/views/beneficiario1.jsp").forward(req, resp);
                System.out.println("Evalu");
            }else if(usuario.getRol().equals("jefeFamilia")){
                getServletContext().getRequestDispatcher("/views/beneficiario1.jsp").forward(req, resp);
                System.out.println("fami");
            }
            
        }
    }
}
